//
//  AppDelegate.h
//  doubleEduStudents
//
//  Created by 盛洋 on 2021/1/4.
//  Copyright © 2021 shengYang. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <CoreData/CoreData.h>
#import "BaseNavVC.h"
#import "BaseTabbarVC.h"
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
#import <UserNotifications/UserNotifications.h>
#endif
@interface AppDelegate : UIResponder <UIApplicationDelegate,UITabBarControllerDelegate,UNUserNotificationCenterDelegate>

@property (readonly, strong) NSPersistentContainer *persistentContainer;


@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) BaseNavVC *nav;

@property (strong, nonatomic) BaseTabbarVC *tabBarController;
@property (strong, nonatomic) NSString *client;

@property (strong, nonatomic) UIViewController*controller;
/**
 * 代表直接消失 2 代表消失并返回首页
 */
@property (assign, nonatomic) int login_backtype;
/**
 * 重新登录的提示框是否已经在显示
 */
@property (assign, nonatomic) BOOL alertIsShow;
//判断个推推送时走的通道
/**ios的消息是分两部分的 一部分是走apn的通知栏，消息 另一部分是走我们通道的透传消息 这两部分是服务端推送代码里面你们的人员会设定好的 分别是两个不同的方法 如果消息下发的时候 你客户端是在后台的（也就是客户端是离线）那么会收到apn的通知 透传消息就进离线了 只有你下次在线的时候 （也就是下次应用到前台的时候）才会下发下来 如果下发的时候应用是在前台的 那这样的话客户端就直接收到透传消息了 apn那部分消息就不会下发了*/
@property (assign , nonatomic) BOOL isApns;
@property (assign, nonatomic) NSInteger badgeNum;

- (void)showloginalertview:(UIViewController*)viewcontroller;


- (void)saveContext;


@end

